Socket
Socket
Sign inDemoInstall

ci-info

Package Overview
Dependencies
0
Maintainers
1
Versions
31
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    ci-info

Get details about the current Continuous Integration environment


Version published
Maintainers
1
Install size
12.3 kB
Created

Package description

What is ci-info?

The ci-info npm package provides information about the Continuous Integration (CI) environment that your code is running in. It can detect if the current environment is a CI server and provide details about which one it is. This is useful for adjusting the behavior of your application or scripts based on whether they are being run in a CI environment or not.

What are ci-info's main functionalities?

Detecting CI environment

This feature allows you to check if your code is running in a CI environment. The property 'isCI' will be true if it is, or false otherwise.

const ci = require('ci-info');

if (ci.isCI) {
  console.log('The code is running in a CI environment.');
} else {
  console.log('This is not a CI environment.');
}

Identifying specific CI service

This feature allows you to check for specific CI services. Each supported CI service has a corresponding property that will be true if the code is running on that service.

const ci = require('ci-info');

if (ci.TRAVIS) {
  console.log('The code is running on Travis CI.');
}

Getting CI service name

This feature allows you to retrieve the name of the CI service that the code is running on, if it is running in a CI environment.

const ci = require('ci-info');

if (ci.isCI) {
  console.log(`The CI service name is ${ci.name}`);
}

Other packages similar to ci-info

Changelog

Source

v1.6.0

  • feat: add Sail CI support
  • feat: add Buddy support
  • feat: add Bitrise support
  • feat: detect Jenkins PRs
  • feat: detect Drone PRs

Readme

Source

ci-info

Get details about the current Continuous Integration environment.

Please open an issue if your CI server isn't properly detected :)

npm Build status js-standard-style

Installation

npm install ci-info --save

Usage

var ci = require('ci-info')

if (ci.isCI) {
  console.log('The name of the CI server is:', ci.name)
} else {
  console.log('This program is not running on a CI server')
}

Supported CI tools

Officially supported CI servers:

NameConstant
AWS CodeBuildci.CODEBUILD
AppVeyorci.APPVEYOR
Bamboo by Atlassianci.BAMBOO
Bitbucket Pipelinesci.BITBUCKET
Bitriseci.BITRISE
Buddyci.BUDDY
Buildkiteci.BUILDKITE
CircleCIci.CIRCLE
Cirrus CIci.CIRRUS
Codeshipci.CODESHIP
Droneci.DRONE
dsarici.DSARI
GitLab CIci.GITLAB
GoCDci.GOCD
Hudsonci.HUDSON
Jenkins CIci.JENKINS
Magnum CIci.MAGNUM
Sail CIci.SAIL
Semaphoreci.SEMAPHORE
Shippableci.SHIPPABLE
Solano CIci.SOLANO
Strider CDci.STRIDER
TaskClusterci.TASKCLUSTER
Team Foundation Server by Microsoftci.TFS
TeamCity by JetBrainsci.TEAMCITY
Travis CIci.TRAVIS

API

ci.name

A string. Will contain the name of the CI server the code is running on. If not CI server is detected, it will be null.

Don't depend on the value of this string not to change for a specific vendor. If you find your self writing ci.name === 'Travis CI', you most likely want to use ci.TRAVIS instead.

ci.isCI

A boolean. Will be true if the code is running on a CI server. Otherwise false.

Some CI servers not listed here might still trigger the ci.isCI boolean to be set to true if they use certain vendor neutral environment variables. In those cases ci.name will be null and no vendor specific boolean will be set to true.

ci.isPR

A boolean if PR detection is supported for the current CI server. Will be true if a PR is being tested. Otherwise false. If PR detection is not supported for the current CI server, the value will be null.

ci.<VENDOR-CONSTANT>

A vendor specific boolean constants is exposed for each support CI vendor. A constant will be true if the code is determined to run on the given CI server. Otherwise false.

Examples of vendor constants are ci.TRAVIS or ci.APPVEYOR. For a complete list, see the support table above.

Deprecated vendor constants that will be removed in the next major release:

  • ci.TDDIUM (Solano CI) This have been renamed ci.SOLANO

License

MIT

Keywords

FAQs

Last updated on 20 Sep 2018

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc